home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / SYS / s / REXX.lha / Search.rexx < prev    next >
OS/2 REXX Batch file  |  1995-05-01  |  2KB  |  113 lines

  1. /*
  2.  * WRITE V3.1536 © 1991-1995 by Tim Teulings
  3.  *
  4.  * Dieses Script öffnet einen Filerequester, in dem man verschiedene Files
  5.  * auswählen kann. Anschließen öffnet sich der GETFINDREPLACE-Requester,
  6.  * im welchem man dann ein Suchwort auswählen kann.
  7.  * Write such dann in den entsprechenden Files nach dem Suchwort und zeigt
  8.  * alle gefundenen Stellen an.
  9.  *
  10.  * $VER: 1.1 updated to version 3.1536 (Tim Teulings)
  11.  *
  12.  */
  13.  
  14. IF ~show('P',"WRITE") THEN
  15. DO
  16.   say "Dieses Skrpit arbeitet nicht ohne dem Texteditor WRITE !"
  17.   EXIT 0
  18. END
  19.  
  20. ADDRESS "WRITE"
  21.  
  22. OPTIONS RESULTS
  23. SIGNAL ON SYNTAX /* Abfangen von Syntaxfehlern */
  24.  
  25. 'VERSIONCHECK 40000 "Search.wrx"'
  26. IF RC~=0 THEN DO
  27.   exit 10
  28. END
  29.  
  30. ID = -1
  31.  
  32. CLEARLIST "0"
  33. 'GETFILES "0" "" ""'
  34. IF RC~=0 THEN DO
  35.   EXIT
  36. END
  37.  
  38. 'LISTSIZE "0"'
  39. Size = RESULT
  40.  
  41. IF Size=0 THEN DO
  42.   EXIT
  43. END
  44.  
  45. 'NEWED "EMPTY.CONFIG"'
  46. ID = RESULT
  47. LOCKWINDOW ID
  48.  
  49. 'GETFINDREPLACE _FindString _ReplaceString'
  50. IF RC~=0 THEN DO
  51.   QUITED
  52.   EXIT
  53. END
  54.  
  55. LastLine = -1
  56.  
  57. DO x=1 TO Size
  58.  
  59.   GETLISTENTRY 0 x
  60.   IF RC=0 THEN DO
  61.     File = RESULT
  62.     say File || ...
  63.   END
  64.  
  65.   'OPEN &File'
  66.   IF RC=0 THEN DO
  67.  
  68.     found = 0
  69.  
  70.     'FIND @CURSOR @CURSOR @EOT @EOT {@SILENT}'
  71.     DO WHILE RC=0
  72.  
  73.       'GETVAR "_yPos"'
  74.       Line = RESULT
  75.       'GETVAR "_CurrentLine"'
  76.       Text = RESULT
  77.  
  78.       if LastLine~=Line then do
  79.         say strip(Line) || " : " || Text
  80.       end
  81.  
  82.       LastLine=Line
  83.  
  84.       found = found + 1
  85.  
  86.       'FIND @CURSOR @CURSOR @EOT @EOT {@SILENT}'
  87.     END
  88.  
  89.   END
  90.  
  91.   ID = -1
  92.  
  93.   IF found>0 THEN DO
  94.     say
  95.   END
  96.  
  97. END
  98.  
  99. QUITED
  100.  
  101. EXIT
  102.  
  103. /********/
  104. /* Ende */
  105. /********/
  106.  
  107.  
  108. SYNTAX:
  109.  
  110. SAY "Leider trat ein Fehler auf... Zeile " SIGL ":" ERRORTEXT(RC)
  111. LOCKWINDOW 0
  112. EXIT
  113.